home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 22
/
Aminet 22 (1997)(GTI - Schatztruhe)[!][Dec 1997].iso
/
Aminet
/
dev
/
e
/
amigae33a.lha
/
E_v3.3a
/
Src.lha
/
Src
/
Modules
/
intuition
/
classes.e
< prev
next >
Wrap
Text File
|
1996-12-04
|
994b
|
48 lines
OPT MODULE
OPT EXPORT
OPT PREPROCESS
MODULE 'exec/libraries',
'exec/nodes',
'intuition/classusr',
'utility/hooks'
OBJECT iclass
dispatcher:hook
reserved:LONG
super:PTR TO iclass
id:LONG
instoffset:INT -> This is unsigned
instsize:INT -> This is unsigned
userdata:LONG
subclasscount:LONG
objectcount:LONG
flags:LONG
ENDOBJECT /* SIZEOF=NONE !!! */
CONST CLB_INLIST=0,
CLF_INLIST=1
-> instoffset and instsize are unsigned so AND with $FFFF
#define INST_DATA(cl, o) ((o)+(cl::iclass.instoffset AND $FFFF))
#define SIZEOF_INSTANCE(cl) ((cl::iclass.instoffset AND $FFFF)+(cl::iclass.instsize AND $FFFF)+SIZEOF object)
CONST OJ_CLASS=8
OBJECT object
node:mln
class:PTR TO iclass
ENDOBJECT /* SIZEOF=12 */
#define _OBJ(o) (o)
#define BASEOBJECT(_obj) ((_obj)+SIZEOF object)
#define _OBJECT(o) ((o)-SIZEOF object)
#define OCLASS(o) (Long(_OBJECT(o)+OJ_CLASS))
OBJECT classlibrary
lib:lib
pad:INT
class:PTR TO iclass
ENDOBJECT